Para iniciar el trabajo es necesario cargar las librerĂas que estĂ¡n destinadas a usarse para la modificaciĂ³n y graficaciĂ³n de datos, Esto se hace con el siguiente comando:
library(ggplot2)
library(dplyr)
library(hrbrthemes)
library(plotly)
Ahora se crea un nuevo data frame con el archivo .csv brindado.
inp <- read.csv("liberia_datos_climaticos.csv",sep = ",", na.strings = "", dec = ",")
Esta funciĂ³n sirve para saber si el archivo posee celdas sin informaciĂ³n.
inp <- read.csv("liberia_datos_climaticos.csv",sep = ",", na.strings = "", dec = ",")
Ahora bien, para limpiar esas celdas sin infromaciĂ³n se utiliza el siguiente comando:
inp_clean <- na.omit(inp)
Con el siguiente comando, se pueden renombrar las columnas, para tener una mayor facilidad al digitar sus nombres en comandos futuros.
inp_clean <-
inp_clean %>%
rename(fecha = Date,
temperatura = Temperatura..Celsius.,
humedad_relativa = HumedadRelativa....,
velocidad_viento = VelocidadViento..m.s.,
lluvia = Lluvia..mm.,
irradiacion = Irradiacion..W.m2.,
evotranspiracion = "EvapoTranspiracion..mm.")
Este comando funciona para que la fecha en las columnas, tenga un formato deseado para trabajar.
Tempdate <- strptime(inp_clean[,1], format= "%d/%m/%Y")
Por otra parte, con estos se logra conocer el promedio y sumatoria de las variables deseadas.
inp_monthtemp<- tapply(inp_clean[,2], format(Tempdate, format="%m/%Y"),FUN=mean)
inp_monthhumedad<- tapply(inp_clean[,3], format(Tempdate, format="%m/%Y"),FUN=mean)
inp_monthvelviento<- tapply(inp_clean[,4], format(Tempdate, format="%m/%Y"),FUN=mean)
inp_monthlluvia<- tapply(inp_clean[,5], format(Tempdate, format="%m/%Y"),FUN=sum)
inp_monthirradiacion<- tapply(inp_clean[,6], format(Tempdate, format="%m/%Y"),FUN=mean)
inp_monthevotranspiracion<- tapply(inp_clean[,7], format(Tempdate, format="%m/%Y"),FUN=sum)
Ahora bien, para poder introducir archivos data frame se necesitan convertir los valores na archivos .csv, esto se logra con el siguiente comando para cada variable respectivamente:
write.csv(rbind(inp_monthtemp), file="inp_monthtemp.csv")
write.csv(rbind(inp_monthhumedad), file="inp_monthhumedad.csv")
write.csv(rbind(inp_monthvelviento), file="inp_monthvelviento.csv")
write.csv(rbind(inp_monthlluvia), file="inp_monthlluvia.csv")
write.csv(rbind(inp_monthirradiacion), file="inp_monthirradiacion.csv")
write.csv(rbind(inp_monthevotranspiracion), file="inp_monthevotranspiracion.csv")
write.csv(rbind(inp_clean), file="inp_clean.csv")
Una vez se tienen los archivos .csv, se introce este comando para creardataframes de ellos.
df_inp_monthtemp <- read.csv("inp_monthtemp.csv",sep = ",", na.strings = "", dec = ",")
df_inp_monthlluvia <- read.csv("inp_monthlluvia.csv",sep = ",", na.strings = "", dec = ",")
df_inp_monthhumedad <- read.csv("inp_monthhumedad.csv",sep = ",", na.strings = "", dec = ",")
df_inp_monthvelviento <- read.csv("inp_monthvelviento.csv",sep = ",", na.strings = "", dec = ",")
df_inp_monthirradiacion <- read.csv("inp_monthirradiacion.csv",sep = ",", na.strings = "", dec = ",")
df_inp_monthevotrans <- read.csv("inp_monthevotranspiracion.csv",sep = ",", na.strings = "", dec = ",")
df_inpmonthfull <- read.csv("inp_monthfull.csv",sep = ",", na.strings = "", dec = ".")
En esta secciĂ³n se grafican las variables totales de los datos recolectados en Liberia
ggplot(inp_clean, aes(x = temperatura)) +
geom_histogram(binwidth = 0.4,
color = "black",
fill = "orange") +
ggtitle("Temperatura de los datos en Liberia (2015-2019)") +
xlab("Temperatura °C") +
ylab("% Frecuencia") +
theme_ft_rc()
ggplot(inp_clean, aes(x = humedad_relativa)) +
geom_histogram(binwidth = 3,
color = "black",
fill = "cyan") +
ggtitle("Humedad relativa de datos en Liberia (2015-2019)") +
xlab(" % Cantidad de vapor de agua") +
ylab("% Frecuencia") +
theme_ft_rc()
ggplot(inp_clean, aes(x = velocidad_viento)) +
geom_histogram(binwidth = 0.6,
color = "black",
fill = "gray") +
ggtitle("Velocidad del viento de datos en Liberia (2015-2019)") +
xlab(" m/s") +
ylab("% Frecuencia") +
theme_ft_rc()
ggplot(inp_clean, aes(x = lluvia)) +
geom_histogram(binwidth = 15,
color = "black",
fill = "blue") +
ggtitle("Cantidad de lluvia de datos en Liberia (2015-2019)") +
xlab(" mm") +
ylab("% Frecuencia") +
theme_ft_rc()
ggplot(inp_clean, aes(x = irradiacion)) +
geom_histogram(binwidth = 40,
color = "black",
fill = "cyan") +
ggtitle("IrradiaciĂ³n de los datos en Liberia (2015-2019)") +
xlab(" Gy") +
ylab("% Frecuencia") +
theme_ft_rc()
ggplot(inp_clean, aes(x = evotranspiracion)) +
geom_histogram(binwidth = 1.3,
color = "black",
fill = "violet") +
ggtitle("EvotranspiraciĂ³n de los datos en Liberia (2015-2019)") +
xlab(" % de humedad perdida") +
ylab("% Frecuencia") +
theme_ft_rc()
plot_ly(data = df_inpmonthfull,
x = ~ Fecha,
y = ~ Promedio_temperatura,
name = 'Temperatura °C',
type = 'scatter',
mode = 'lines',
line = list(color = "red")) %>%
add_trace(y = ~ Promedio_humedad,
name = 'Humedad (%vapor de agua perdido)',
mode = 'lines',
line = list(color = "cyan")) %>%
add_trace(y = ~ Promedio_vel_viento,
name = 'Velocidad viento (m/s)',
mode = 'lines',
line = list(color = "gray")) %>%
add_trace(y = ~ Suma_lluvia,
name = 'LLuvia (mm)',
mode = 'lines',
line = list(color = "blue")) %>%
add_trace(y = ~ Promedio_iiradiacion,
name = 'Irradiacion (Cy)',
mode = 'lines',
line = list(color = "yellow")) %>%
add_trace(y = ~ Suma_evotranspiracion,
name = 'Evotranspiracion (% de humedad perdida)',
mode = 'lines',
line = list(color = "violet")) %>%
layout(title = "Promedios de datos de Liberia por mes (2015-2019) ",
yaxis = list(title = "Promedio"),
xaxis = list(title = "Fecha"),
legend = list(x = 0.1, y = 0.9),
hovermode = "compare")
plot_ly(data = inp_clean,
x = ~ fecha,
y = ~ temperatura,
name = 'Temperatura °C',
type = 'scatter',
mode = 'lines',
line = list(color = "red")) %>%
add_trace(y = ~ humedad_relativa,
name = 'Humedad (%vapor de agua perdido)',
mode = 'lines',
line = list(color = "cyan")) %>%
add_trace(y = ~ velocidad_viento,
name = 'Velocidad viento (m/s)',
mode = 'lines',
line = list(color = "gray")) %>%
add_trace(y = ~ lluvia,
name = 'LLuvia (mm)',
mode = 'lines',
line = list(color = "blue")) %>%
add_trace(y = ~ irradiacion,
name = 'Irradiacion (Cy)',
mode = 'lines',
line = list(color = "yellow")) %>%
add_trace(y = ~ evotranspiracion,
name = 'Evotranspiracion (% de humedad perdida)',
mode = 'lines',
line = list(color = "violet")) %>%
layout(title = "ComparaciĂ³n de los datos diarios de Liberia (2015-2019) ",
yaxis = list(title = "Promedio"),
xaxis = list(title = "Fecha"),
legend = list(x = 0.1, y = 0.9),
hovermode = "compare")
Note that the echo = FALSE parameter was added to the code chunk to prevent printing of the R code that generated the plot.